/**
 * 日志工具模块
 * 提供应用程序中使用的日志记录功能
 */

const logger = {
  /**
   * 记录信息级别的日志
   * @param {string} message - 日志消息
   */
  info: (message) => {
    console.log(`[INFO] ${new Date().toISOString()}: ${message}`);
  },

  /**
   * 记录警告级别的日志
   * @param {string} message - 日志消息
   */
  warn: (message) => {
    console.warn(`[WARN] ${new Date().toISOString()}: ${message}`);
  },

  /**
   * 记录错误级别的日志
   * @param {string|Error} message - 错误消息或错误对象
   */
  error: (message) => {
    const errorMessage = message instanceof Error ? `${message.message}\n${message.stack}` : message;
    console.error(`[ERROR] ${new Date().toISOString()}: ${errorMessage}`);
  },

  /**
   * 记录调试级别的日志
   * @param {string} message - 日志消息
   */
  debug: (message) => {
    if (process.env.NODE_ENV !== 'production') {
      console.debug(`[DEBUG] ${new Date().toISOString()}: ${message}`);
    }
  }
};

module.exports = logger; 